#ifndef GOTO_FILE_H
#define GOTO_FILE_H

#include <wx/dialog.h>
#include "incremental_select_helper.h"

class wxBoxSizer;
class wxListCtrl;
class wxStaticText;
class wxTextCtrl;

class GotoFile: public wxDialog {
  public:
    GotoFile( wxWindow* parent, IncrementalSelectIterator *iterator, const wxString &title, const wxString &message );
    ~GotoFile() override;
    int GetSelection();
    void AddControlBelowList( wxControl *control );
  private:
    void FilterItems();
  private:
    IncrementalSelectHandler m_handler;
  private:
    IncrementalListCtrl* m_ResultList;
    wxBoxSizer* m_sizer;
    wxTextCtrl* m_Text;
    static const long ID_TEXTCTRL1;
    static const long ID_RESULT_LIST;
  protected:
    void BuildContent( wxWindow* parent, IncrementalSelectIterator *iterator, const wxString &title, const wxString &message );
    DECLARE_EVENT_TABLE()
};

#endif
